(1) Field of the Invention
The present invention relates to a variable rate coder for transforming an input signal into a low and adaptively variable bit rate digital signal, and, more particularly, to such a coder employing a plurality of coding circuits each comprising an output quantizer having a different output bit rate, and independently transforming the input signal into a compressed digital signal.
Generally, when a voice signal or a picture signal is transmitted, the original input signal is coded at the sender (i.e., transmitting) side by a coding method to reduce the bit rate on the transmission line, and the coded signal is received and decoded to regenerate the original signal in the receiver side.
In the above transmission using coding, in addition to the requirement of a low bit rate, a sufficient quality of the regenerated signal is required according to the purpose of usage.
In particular, in communication systems which allow variations of bit rate, such as a packet communication system, it is desirable to code an input signal to a least bit rate signal which maintains a sufficient quality of the regenerated signal from the view point of efficiency and quality.
(2) Description of the Related Art
One attempt to realize the above-mentioned coding wherein an input signal is coded to a least bit rate signal which maintains a sufficient quality of the regenerated signal, called a variable rate coder, is described by T. Taniguchi, et al. in "ADPCM with a Multiquantizer for Speech Coding", IEEE Journal on Selected Areas in Communications, Vol. 6, Feb. 1988, pp. 410-424.
The coder described in the above paper comprises a plurality of ADPCM coder units, and the number of bits of the quantizer output in each coder unit is different.
Input signals are coded in parallel in the plurality of coder units, the quality of the coding in each coder unit is evaluated for each frame of data, and the coder unit giving a lowest bit rate among the coder units satisfying a predetermined quality requirement is selected to be used for transmission.
To carry out the above evaluation (determination whether or not the output of each coder unit satisfies the above predetermined requirement of quality), two methods are described in the above paper.
In the one method, the signal-to-noise ratio (SNR) value is obtained for each coder unit and each frame of data, and the obtained SNR value is compared with a threshold of the SNR corresponding to the above predetermined quality requirement.
In a coder which performs prediction coding, the difference between an input signal and a prediction value of the input are quantized by the quantizer, and the output of the quantizer is used as the output of the coder. The SNR in the coder is expressed by a multiple (summation when the SNR is expressed as a logarithm) of a prediction gain and a quantization gain when the input signal is large enough to ignore the quantization step size in the analog to digital converter which is provided in the input stage of the coder. Therefore, when the prediction gain is large (the above difference is small), only a small number of the quantization steps in the quantizer (a small number of output bits of the quantizer) is necessary to obtain the required SNR, and when the prediction gain is small (the above difference is large), a large number of the quantization steps in the quantizer (a large number of output bits of the quantizer) is necessary to obtain the required SNR. Thus, the above-mentioned evaluation of the SNR enables control of the output bit rate of the coder.
In the other method, a noise (error) level is used for the evaluation instead of the SNR.
As described in the above paper, there is a problem that a high bit rate output is selected for a low level input signal when evaluation based on the SNR is used, and for a high level input signal when evaluation based on the noise level is used.
Generally, an analog to digital converter is provided in the sampling stage of a coder for converting an analog input signal to a digital signal, where a fixed amplitude range for input signals (dynamic range) is assigned at the input of the analog to digital converter, and the step size (resolution) in the analog to digital converter is constant. The constant step size in the analog to digital converter limits the SNR in the analog to digital converter, and thus the SNR in the total coder output. In particular, when the input level becomes lower, it becomes difficult to obtain the required SNR value.
As mentioned, the above control of the output bit rate of the coder using the SNR evaluation is effective when the input signal is large enough to ignore the quantization step size in the analog to digital converter. However, when an SNR value in the analog to digital converter which is determined by the factor: (input signal level)/(quantization step size in the analog to digital converter), is comparable with the SNR value required for the total coder (i. e., required for a signal regenerated in the receiver side through the coder and a corresponding decoder), the above control of the output bit rate of the coder using the evaluation of SNR is not effective because an increase in the quantization gain in the quantizer can recover only a decrease in the prediction gain, but cannot recover the SNR degraded in the analog to digital converter. Nevertheless, in the conventional variable rate coder, the above control of the output bit rate of the coder using the evaluation of SNR, i. e., an increase in the output bit rate of the coder when the SNR of the coder becomes lower, is carried out even when the SNR of the coder is degraded by the SNR in the analog to digital converter due to a low level input.
In the coder wherein the above control of the output bit rate is carried out based on the noise level instead of the SNR, the aforementioned problem of a high bit rate for a high level input is caused by a constant threshold level for noises which requires a high SNR for a high level input.
Therefore, in the conventional variable rate coders, even if the output bit rate of the coder is controlled based on the SNR or the noise level, there is a problem that a high bit rate, which does not contribute to the quality of the transmitted signal, is output according to the variation of the input level.
Further, in the conventional variable rate coder as described in the aforementioned paper by Taniguchi et al., a plurality of coder units are provided, wherein the number of the coder units is determined by the extent of the variation of the necessary bit rates to obtain a required quality, and an input signal is coded in parallel in all the coding units. Therefore, there is a problem that the scale of the hardware is very large.